import { Message, MessageBox } from 'element-ui';
/**
 *
 * @param {Array} header 表头名称
 * @param {Array} headValue 表头名称对应属性字段
 * @param {Array} exportData 导出报表数据
 * @param {String} filename 文件名称
 *  @param {String} bookType 文件类型 xlsx
 */
const formatJson = (headValue, jsonData) => {
	return jsonData.map((v) => headValue.map((j) => v[j]));
};

//导出excel
export const export2Excel = function(
	header,
	headValue,
	exportData,
	filename = '数据报表',
	autoWidth = true,
	bookType = 'xlsx'
) {
	Message({ type: 'warning', message: '数据读取中，请稍后' });
	MessageBox.confirm('确定导出内容', '提示', {
		cancelButtonClass: 'btn-custom-cancel',
		confirmButtonText: '确定',
		cancelButtonText: '取消',
		type: 'warning'
	})
		.then(() => {
			import('@/vendor/Export2Excel').then((moudle) => {
				moudle.export_json_to_excel({
					header,
					data: formatJson(headValue, exportData),
					filename,
					autoWidth,
					bookType
				});
			});
		})
		.catch(() => {
			Message({ type: 'info', message: '已取消导出' });
		});
};
